package pkg

//
//import (
//	"io"
//	"log"
//	"net/http"
//	"time"
//
//	jwtmiddleware "github.com/auth0/go-jwt-middleware"
//	"github.com/grijalva/jwt-go"
//)
//
//const (
//	APP_KEY = "www.topgoer.com"
//)
//
//func main() {
//
//	// HTTP Endpoints
//	// 1. To get a new token
//	// 2. Our example endpoint which requires auth checking
//	http.HandleFunc("/token", TokenHandler)
//	http.Handle("/", AuthMiddleware(http.HandlerFunc(ExampleHandler2)))
//
//	// Start a basic HTTP server
//	if err := http.ListenAndServe(":8080", nil); err != nil {
//		log.Fatal(err)
//	}
//}
//
//// TokenHandler是我们获取用户名和密码的处理程序，如果有效，则返回用于将来请求的令牌。
//func TokenHandler(w http.ResponseWriter, r *http.Request) {
//
//	w.Header().Add("Content-Type", "application/json")
//	r.ParseForm()
//
//	// 检查提供的凭据-如果将这些凭据存储在数据库中，则查询将在此处进行检查。
//	username := r.Form.Get("username")
//	password := r.Form.Get("password")
//	if username != "myusername" || password != "mypassword" {
//		w.WriteHeader(http.StatusUnauthorized)
//		io.WriteString(w, `{"error":"invalid_credentials"}`)
//		return
//	}
//	// 颁发一个有限期一小时的证书
//	token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
//		"user": username,
//		"exp":  time.Now().Add(time.Hour * time.Duration(1)).Unix(),
//		"iat":  time.Now().Unix(),
//	})
//	tokenString, err := token.SignedString([]byte(APP_KEY))
//	if err != nil {
//		w.WriteHeader(http.StatusInternalServerError)
//		io.WriteString(w, `{"error":"token_generation_failed"}`)
//		return
//	}
//	io.WriteString(w, `{"token":"`+tokenString+`"}`)
//	return
//}
